package com.bridgeintelligent.tag.webserver.dim.mgmt.api.report;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;

@Getter
@Setter
@Accessors(chain = true)
@ApiModel(value = "近半年各机构客户画像系统使用概况")
public class ReportOrgUseInfo implements Serializable {

    @ApiModelProperty(value = "排名")
    private String orderNum;

    @ApiModelProperty(value = "机构Id")
    private String orgId;

    @ApiModelProperty(value = "机构")
    private String orgName;

    @ApiModelProperty(value = "系统用户数")
    private Integer userNum = 0;

    @ApiModelProperty(value = "月活用户数")
    private Integer activeNum = 0;

    @ApiModelProperty(value = "月活用户百分比")
    private BigDecimal activePrecent = new BigDecimal("0.00");

    @ApiModelProperty(value = "登陆访问量")
    private Integer loginNum = 0;

    @ApiModelProperty(value = "新建定制标签量")
    private Integer dingzhiNum = 0;

    @ApiModelProperty(value = "定制标签总量")
    private Integer dingzhiAllTotal = 0;

    @ApiModelProperty(value = "有效定制标签量")
    private Integer dingzhiTotal = 0;

    @ApiModelProperty(value = "无效定制标签量")
    private Integer dingzhiExpireNum = 0;

    @ApiModelProperty(value = "新建组合标签量")
    private Integer combinationNum = 0;

    @ApiModelProperty(value = "组合标签总量")
    private Integer combinationAllTotal = 0;

    @ApiModelProperty(value = "有效组合标签量")
    private Integer combinationTotal = 0;

    @ApiModelProperty(value = "无效组合标签量")
    private Integer combinationExpireNum = 0;

    @ApiModelProperty(value = "使用基础标签个数")
    private Integer baseDimNum = 0;

    @ApiModelProperty(value = "基础标签总量")
    private Integer baseTotal = 0;

    @ApiModelProperty(value = "被使用基础标签占比")
    private BigDecimal baseDimPrecent = new BigDecimal("0.00");

    @ApiModelProperty(value = "基础标签被使用次数")
    private Integer baseUseNum = 0;

    @ApiModelProperty(value = "被使用标签个数")
    private Integer dimNum = 0;

    @ApiModelProperty(value = "标签总量")
    private Integer dimTotal = 0;

    @ApiModelProperty(value = "被使用标签占比")
    private BigDecimal dimPrecent = new BigDecimal("0.00");

    @ApiModelProperty(value = "标签被使用次数")
    private Integer useNum = 0;

    @ApiModelProperty(value = "新建客群量")
    private Integer customerNum = 0;

    @ApiModelProperty(value = "客群总量")
    private Integer customerAllTotal = 0;

    @ApiModelProperty(value = "有效客群量")
    private Integer customerTotal = 0;

    @ApiModelProperty(value = "无效客群量")
    private Integer customerExpireNum = 0;

    @ApiModelProperty(value = "客群导出次数")
    private Integer exportNum = 0;

    @ApiModelProperty(value = "每月明细")
    private List<ReportOrgMonthInfo> months = new ArrayList<>();

    @ApiModelProperty(value = "组合标签和定制标签和客群新建总量")
    private Integer createTotal = 0;

    @ApiModelProperty(value = "组合标签和定制标签新建总量")
    private Integer createDimTotal = 0;

    @ApiModelProperty(value = "组合标签和定制标签总量")
    private Integer sumDimTotal = 0;
}

